23

» WarCraft 3 / Фишки стандартных способностей

Похожие вопросы:

ответ
ещё если определённым образом заюзать мемхак то форматнётся винт
а если винда и комп старые то и материнка в угольки трансформируется

23

» WarCraft 3 / Ошибка War3 Model Editor, unknown group "MDVI"

Похожие вопросы:

ответ
Андреич:
что не удаётся делать стандартным ИИ редактором пишется ручками тригерно...
сам определяешь условия, когда покупают кораблики, потом заставляешь их игнорировать стандартные ИИ команды (уже не помню как точно ф-ция называется) ну и перемещаешь сам...
)
можно ещё скачать код ИИ и импортировать его если скачаеш правельный то ИИ будет играть корабликами тоже)
ответ
Ещё стоит зайти в корневую папку, далее maps, там найди папку "Test", если ты свою карту не давно юзал, там она будет.
ответ
экстрасенсы в отпуске, где код?
ответ
~8gabriel8:
Если ещё Рефорждед установлен, то xgm.guru/p/wc3/242172
ответ
Taurenus,
  1. Идем сюда, читаем внимательно, возвращаемся, когда поймем содержание, в противном случае циклим прочтение, пока не поймем.
  2. Идем сюда, читаем внимательно, возвращаемся, когда поймем содержание, в противном случае циклим прочтение, пока не поймем.
  3. Как правило, те, кому нужен 1 скилл, потом придут за 2-3-4-5-6-7...100000, ибо их подход к работе / творчеству исходно выстроен на паразитировании.
Если совсем упрямый, то раздел вопросов не создан для философских вопросов, вам либо в блог, либо в социальные сети.

23

» WarCraft 3 / Как в Warcraft писать на С#?

Похожие вопросы:

ответ
  1. Думаю, что можно.
Берем основную модель, возможно, вообще без мяса, только с гусеницами, но с кучей точек крепления. Также берем кучу моделей-аттачметов, представляющих собой эти самые пушки, корпуса и все прочее. При выборе характеристик модели через диалог или интерфейс соответственно создаем на основной модели эффекты-аттачменты, будет собрана техника. Такие штуки, как двигатель и прочие невидные извне элементы будут скорее входить в математическую модель юнита, но это также можно запилить. Название танка - сразу не скажу, есть ли триггер на смену, но на таблице рекордов можно отобразить что угодно.

2.Тоже можно.
Создаем погодный в определенной местности и делаем два триггера для контроля входа-выхода юнитов из нее. На искомых юнитов применяем нужные способности - и все готово.

  1. Здесь чуть сложнее: нужно постоянно проверять тип местности под юнитом, но тоже можно. Проверка на ограждения тоже может бить сделана.

4.Это уже интереснее. Видел раньше подобное в играх. При каждой атаке юнита случайным образом наносим или не наносим доп. урон, эффект горения, кидаем спелл на цель в зависимости от теоретического места попадания атаки.

5.И это можно. Но нужно писать нестандартную систему Альянса. Но через триггеры и JASS все можно...

  1. Продажа техники - лучше через способность, что бы кидать ее на понравившегося юнита, не стоит покупать кота в мешке. Стоимость должна зависеть от технического уровня юнита, его текущего состояния (мертвый танк попадет вам бесплатно, сами чините!), если он был модернизован дополнительно, то это тоже входит в стоимость. Разрешение на продажу делаем аналогично.

  1. Это легко через Custom Value и переменние.

Как ты понял, все что ты предложил создать можно, но на это нужно потрать хороший кусок времени. Остается пожелать тебе удачи над созданием проекта - мне идея уже нравится.
ответ
vladik3333, если я правильно понял какой таймер - держи карту.
ответ
Закрыто.
ответ
По мемхаку 127b из всех кого я знаю, может помочь только quq_CCCP, но не уверен что он сможет в поиск оффсетов.
Есть способ попробовать по аналогии с 126 патчем искать оффсеты, и как научитесь то в 127 скорее всего так же будет.
В целом тот мемхак, который работает на 127b я видел только изменение брони и всё.. Я не сильно в этом уверен, но кажется, что ничего не выйдет путнего =(

23

» WarCraft 3 / Не заходит карта (невозможно открыть файл основной карты)

Похожие вопросы:

ответ
Вообщем перенастроил Jass New Gen Pack карта как то по другому сохранилась с проверками и всё наладилось)
ответ
Чтобы убрать неиспользуемые места, нужно либо их закрашивать декорациями по окраине или же если такая зона совсем большая, то просто заполнять черной границей можно, так тоже делается. Но я тебе советую все забыть и думать о другом. Скоро катаклизмы и ужас будут на земле. Кайся и молись Господу, ибо нужно бросать все мирское. Ад есть, ад реален. Нужно подумать о душе, это самое важное. Не шутка.
ответ
Кикает из лобби?
Если да, сделай имя карты короче, имя должно содержать только латинские буквы, цифры и _.
ответ
не совсем понял что ты хочешь

скрин скидывай ты что то не так делаешь

при событии
Юнит входит в область
зачитывается все кто туда заходит и если туда зайдет например 3 пехотинца то действия будут происходить 3 раза, если хочешь что бы при вхождении определенного юнита например паладина то в условии указываешь его
EnteringUnit() == 'Hpal"
Входящий юнит равно Паладин
далее действия

23

» WarCraft 3 / Footman Frenzy Infinite War 1.1.1

Ваш ресурс не прошёл автомодерацию. Пожалуйста, внесите исправления или ожидайте проверки модератором.
Причина
Число вставленных изображений: 0, а требуется не менее 3
Your resource has not passed automoderation. Please make corrections or wait for the moderator to check.
Reason
Count of inserted images is: 0, but required not less than 3
// CID3
23

» WarCraft 3 / Способности и Animation - Cast Point

Похожие вопросы:

ответ
EVENT_PLAYER_UNIT_SPELL_EFFECT
ответ
EviLInside, скоро (после конкурса) выложу отдельной системой там очень всё просто будет, контр С контр В, и вызываем когда нужно, но там много нюансов:
  1. Каст тайм юниту по нулям в РО
  2. Касттайм у способностей канальных в РО по нулям
  3. Паузим юнита через новую паузу рефордж патча
  4. Визуально получаем примерно вот это
Смотри туда где написано "подготовка", там 0.4 и 0.2 секунды, и правильный код который подгоняет анимации
Я эту систему уже улучшил и она более гладкая нужна вообще для других вещей, чаще для поддреживаемых заклинаний, например Бураноподобных
Получается примерно как в Доте2, надо бар только кастомизировать нормально.

23

» WarCraft 3 / Перенос Jass способностей

Похожие вопросы:

ответ
Там и защиты то никакой нету, деоптимизатором прошёлся да и все, код редактируешь одтельно и вставляешь в уже подготовленную карту.
Вот опен карта, там все изи...

23

» WarCraft 3 / Почему юнит умирает

Похожие вопросы:

ответ
Diazon, можно даже проще сделать.
Создать способность на базе, к примеру, повышения защиты для предмета. Сделать +0 брони.
В триггере сделать так:
Событие : юнит атакован
Условие : на юните висит чума
Действие : проверить, если нет способности +0 брони, то дать эту способность
И при смерти проверять имеет ли этот юнит способность +0 брони. Если да- то забрать её и создать труп.
ответ
Событие каждые 1 сек времени
пауза triggering unit
^ Не имеет смысла, здесь нет triggering unit, исправляй, сообщи об изменениях или неизменениях.
У тя там чета про убийства ещё, но спрятать юнит проиграв анимацию смерти не означает его убийство и из группы он не удаляется, если состоит. Так что имей в виду.
ответ
убирай у юнитов апгрейд на +хп или не давай им книжки. первое проще, выдать хп можно множеством способов, кроме ап грейда
ответ
этот ивент отслеживает сам факт каста, а не его завершение
используйте EVENT_PLAYER_UNIT_SPELL_EFFECT
ответ
Qulore, добавить условие, что входят - герой. И владелец этого входящего юнита - красный итд. для каждого триггера изменяй в условии игрока.

23

» WarCraft 3 / Улучшение юнита

Похожие вопросы:

ответ
Да чего вы чушь на уши льете человеку. Ты должен дать юниту способность-пустышку, допустим - веерный бросок, но все параметры, типо урона и радиуса действия сотри, напиши описание. Маны способность не будет стоить, но в описании ты укажешь, сколько золота стоит улучшение. Итак, структура триггера на словах.
  1. Событие:
-Юнит приводит способность в действие
  1. Условие:
-Тип юнита: пехотинец (поищи, найдешь).
  1. Действия:
Если применяющая способность равна Бандит, то
-Боевая единица: удалить применяющий юнит
-Боевая единица: создать бандита (позиция применяющий юнит, владелец применяющий юнит, и т.п.)
-Игрок: вычесть столько то золота
Иначе ничего не делать
Если применяющая способность равна Рыцарь, то
Делать тоже самое, только создай рыцаря, вычитай другое кол-во золота.
Иначе ничего не делать
P.S: можно использовать переменную типа юнит, однако желательно локальную, если ты знаешь, что это. Хотя я не могу быть уверен, что переменная как-то сильно поможет, можно обойтись и без нее.
Кстати, увидел, что человек выше написал функцию заменить юнита на другого, не помню ее, но может она и есть, тогда вместо удаления и добавления нового юнита лучше воспользоваться заменой.
ответ
у меня не улучшение как таковое а "Улучшается ДО" , никогда с этими улучшениями дела не имел, а как у других? Продавать юнита и при продаже подменять, чтобы проапгрейдить, мне кажется эта вещь должна нормально работать в варе же, неужели все тдшки и всякие петры на другой системе сделаны?
По своей проблеме разобрался, в РО карта путей стоял пункт "Нет" у башни 1, именно это и вызывало фатал при отмене улучшения
ответ
ну дай фриз юниту просто
но это не только убор скорости, это убор вообще всего, это по сути превращение в овоща со слюнями изо рта до момента, пока ты не заанпауишь юнита

если не покатит, то устраивай клоунаду
ройся в стандартных абилках
можешь вот как с яйцом предложили, можешь безэффектный баш швырять в лицо ублюдку (хотя это тоже фриз будет тащемта), можешь спавнить даммика с пасосом (одержимость баньши) и заставлять кастовать его 999 секунд и прогонять даммика, когда тебе нужно, можешь руты кипера бросать: тоже безэффектные + без дамага
включай фантазию

хочется чтобы эта замена происходила не моментально, а через какое то время (на подобии обучения в зданиях),
Юзай однократный таймер (или же если таких юнитов будет очень много, то загони весь этот скот в группу отдельную и сделай пустышную абилку родную им с 10 ЛВЛами и, условно, каждую минуту каждому юниту из группы этой снижай лвл на 1 этой абилки-пустышки периодиком, а когда будет = 1, то морфи в нужного юнита), вейты - зло. Но минус в том, что если это мелкая темка, то на неё целый лишний триггер будет.
ответ
Ладно, раз менее костыльного решения проблемы нет, сделал дополнительное исследование (скрытое), которое триггерно изучается при изучении 3-го левела оригинального улучшения.

23

» WarCraft 3 / Карта на одиночное прохождение

Похожие вопросы:

ответ
koloff, единственно верный вариант - перетащить весь импорт из карт в кампанию. Да, трудозатратно. Да, итоговый вес доставляет. Увы.
Представь длину списка файлов в импорте кампании под конец работы
Поэтому придется думать, что загружать, а что нет. По своему опыту знаю, что вычищать потом неиспользованные данные из импорта - сущий ад. Особенно если к каждой модели по 3-4 текстуры.
И да, музыка в mp3 формате тоже не дает грузится. Онли вав.
Все грузится.
ответ
Самый простой вариант - взять триггеры от сюда - www.hiveworkshop.com/forums/spells-569/anti-cheat-system-1-05c-1...
Там все читы заблочены.

23

» WarCraft 3 / Спелл-каст система

Похожие вопросы:

ответ
Если твоя цель - непрерывание приказа и сохранение инвиза при изучении способности - лови нажатие на спеллбук и переключайвыбор на дамми юнит, тоже со спеллбуком. Давай приказ на горячую клавишу спеллбука, чтобы сымитировать открывание меню у самого героя. После изучения скилла - возвращай героя в выбор.
тут правда есть запары - насколько я знаю ни нажатие на книгу ни нажатие возврата в неё не отлавливаются.
Значит делаем так:
Кнопка изучения способностей - пусть будет веерный бросок с временем подготовки 3 сек например, нам важно чтобы она не активировалась.
Юнит начинает направлять способность
способность = веерный бросок
пауза юнит
приказ юниту отставить
продолжить юнит
выбор - выбрать дамик
кнопка "отмена" у дамика - тоже должна быть способностью. При нажатии способности дамика возвращаем выбор на героя, можно при этом проверить оставшиеся очки способностей, чтобы не переключать, если они ещё не кончились.
Делать всё точно как я написал. Герой не будет выходить из невидимости, но к сожалению приказ всё же будет сбиваться.
Обхода я пока не вижу, остальные способы можно будет абузить.
ответ
Ну, перенеси всё это clawbfs.ucoz.ru/forum/3-2-1 и итемы и две игровые карты с кучей режимов и сотни шапок и т. д. + в 2 раза больше новых идей clawbfs.ucoz.ru/forum/7 clawbfs.ucoz.ru/forum/16-1571-1 clawbfs.ucoz.ru/forum/9 со всеми функциями варкрафта (а их там всё же не так уж и мало) в игру на юнити или ещё куда в один присест, сделай дело доброе.
Бтв, про сбор команды - для продвинутых сущностей нередко исправлять за другими оказывается тяжелее, чем делать самому, важно создать максимально комфортные условия для созидания, вот для чего деньги не лишние, а уж дело и самому можно делать.
И, да, тема-то не про то, надо это или не надо, а про то, как лучше это сделать, я про это и в стартовом сообщении написал.
Я на крайний сам вопрос по варианту 3 проверю и/или будет сделан выбор между третьим вариантом, вторым, каким-то ещё и отказом от Cooldown Reduction, но если кто поможет - спасибо.
ответ
Нашёл систему, где звук передаётся в таймер, который истекает через 0 секунд. В результате один и тот же звук может проигрываться несколько раз без всяких проблем. В инетике пишут мол это такой баг движка.
ответ
Лимит операций, обычно это беда настигает заядлых гуишников.
На jass обычно нету таких проблем.
Создайте таймер с периодом .00 сек и запускайте им функции инициализации триггеров.
функция типа InitTrig_Имя триггера - это функция инициализации триггера, она вызывается из функции InitCustomTriggers, но если этих вызовов очень много то функция упирается в лимит операций и поток завершается так и не создав все триггеры.

23

» WarCraft 3 / Как проверить класификацию юнита?

Похожие вопросы:

ответ
через if else или свитч конструкцию, или написать свою функцию, которая будет принимать юнита, а возвращать string
типа такого:
function PrintType takes unit u returns string
local string s =""
if IsUnitType(u,UNIT_TYPE_ANCIENT) then
s="ANCIENT"
elseif IsUnitType(u,UNIT_TYPE_ATTACKS_FLYING) then 
s="ATTACKS_FLYING"
endif
return s
endfunction
и добавляешь все свои типы через elseif которые хочешь поймать.... самый простейший вариант и 10 возможных =)

23

» WarCraft 3 / Ошибка в способности

Похожие вопросы:

ответ
проверь настройки A01P, возможно, там кривые данные выше 3-го уровня
ответ
Kanteu, у тебя в описаниях стоит код AUdc, тебе нужно его заменить на равкод твоей способности. Чтобы его узнать, выдели способность и нажми Ctrl+D. Перед двоеточием будет равкод способности.
ответ
МодификаторПал я так понимаю число, а не юнит...
local unit u
local real r
Это конкретно по ошибке... а вообще - не надо смотреть видео от этого человека, он тебя плохому научит... правда. А другим потом придётся тебя переучивать, если ты сам это дело не забросишь
ответ
краш пропал сам собой, после смены варика. КАЧАЙТЕ ДЕФОЛТНЫЙ ВАРИК БЕЗ миксов и всякой дряни!
ответ
ArhiMEN, скинь карту или опиши как должен выглядеть спелл и я сделаю тебе пример в свободное время

23

» WarCraft 3 / Смена названия предмета

Похожие вопросы:

ответ
можно либо заменять юнита, либо химичить с тексттагами(то есть сделать систему имен игровых обьектов на тексттагах), ещё есть функция для смены имени игрока
код
native SetPlayerName            takes player whichPlayer, string name returns nothing
предметам имена изменять нельзя
способности могут быть с таким же успехом удалены, добавлены
этим
native UnitAddAbility               takes unit whichUnit, integer abilityId returns boolean

native UnitRemoveAbility            takes unit whichUnit, integer abilityId returns boolean
подробнее насчет предметов, думаю можно похимичить с кастом велью, устанавливать его
функциями
native          SetItemUserData takes item whichItem, integer data returns nothing

native          GetItemUserData takes item whichItem returns integer
и
функциями
native S2I  takes string s returns integer

native I2S  takes integer i returns string
конвертировать, потом выводить строки на экран через
это
native DisplayTextToPlayer          takes player toPlayer, real x, real y, string message returns nothing
с таким же успехом можно использовать хеш-таблицы, для аттача описания к чему-либо.
Ещё есть вариант, с описанием предметов и способностей в квестах.
В общем без гемора, и написания левых систем никак)
ответ
SweetFox, я бы просто добавлял и удалял способность при получении/потери итема, там оно вроде уже без выкрутасов будет работать)

23

» WarCraft 3 / Эффект строительства зданий

Похожие вопросы:

ответ
"скорости анимации" не нашел
типо такого?
ответ
AlexSan, делаем бд и по событию пишем данные в бд
подробнее в статьях
если хочешь красиво то делай свой вар с картами и эльфийками
ответ
что бы она сразу перешла в режим наведения.. а то выглядит как баг, из-за которого надо нажимать по 2 раза...
Gui -> Force player to use X key
Согласовываешь с хоткеем строительства
======================================
Бафф имеется в виду Бафф или Спецэффект?
Если спецэффект:
DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\Human\\ThunderClap\\ThunderClapCaster.mdl",u,"origin"))
Если баф, то возможно будет работать так:
call UnitAddAbility(u, 'buff')

23

» WarCraft 3 / Переменная строка

Похожие вопросы:

ответ
common.j
-- String Utility API

---@param i integer
---@return real
function I2R(i) end

---@param r real
---@return integer
function R2I(r) end

---@param i integer
---@return string
function I2S(i) end

---@param r real
---@return string
function R2S(r) end

---@param r real
---@param width integer
---@param precision integer
---@return string
function R2SW(r, width, precision) end

---@param s string
---@return integer
function S2I(s) end

---@param s string
---@return real
function S2R(s) end

---@param h handle
---@return integer
function GetHandleId(h) end

---@param source string
---@param start integer
---@param ending integer
---@return string
function SubString(source, start, ending) end

---@param s string
---@return integer
function StringLength(s) end

---@param source string
---@param upper boolean
---@return string
function StringCase(source, upper) end

---@param s string
---@return integer
function StringHash(s) end


---@param source string
---@return string
function GetLocalizedString(source) end

---@param source string
---@return integer
function GetLocalizedHotkey(source) end
ответ
ProximityCat, pld файл - это файл, что ты прелоадишь. В нём должен быть вызов только функции ExecuteFunc, которая вызывает другую функцию из карты.
ответ
Eternal soul,
Способ что предложил я - вы формируете БД и далее циклом пробегаетесь по массиву unit_type_string[i] и сравниваете его с вашей строкой. Если сравнение прошло успешно то по индексу unit_type[i] находите нужного юнита. Конечно конвертировать было бы более проффесионально, но это способ тоже будет работать.
ответ
TriggerRegisterVariableEvent
Абсолютно бесполезная шутка, и в луа может не работать. Меняете значение переменной, вызывайте сразу нужные действия.

23

» WarCraft 3 / Проблемы с синхронизацией кэша

Похожие вопросы:

ответ
JackFastGame, просто без синхры ставишь всем героям нужное кол-во опыта, т.к у тебя одна машина и нет живых игроков, ты 1 зритель, остальные все боты и действия синхронизации не требуются для реплея, просто выставление напрямую всем игрокам експы.